import { IPSDELogicNode } from './ipsdelogic-node';
import { IPSDELogicParam } from './ipsdelogic-param';
import { IPSSysDataSyncAgent } from '../../res/ipssys-data-sync-agent';

/**
 *
 * 继承父接口类型值[SYSDATASYNCAGENTOUT]
 * @export
 * @interface IPSDESysDataSyncAgentOutLogic
 */
export interface IPSDESysDataSyncAgentOutLogic extends IPSDELogicNode {
  /**
   * 目标逻辑参数对象
   *
   * @type {IPSDELogicParam}
   */
  getDstPSDELogicParam(): IPSDELogicParam | null;

  /**
   * 目标逻辑参数对象
   *
   * @type {IPSDELogicParam}
   */
  get dstPSDELogicParam(): IPSDELogicParam | null;

  /**
   * 目标逻辑参数对象（必须存在）
   *
   * @type {IPSDELogicParam}
   */
  getDstPSDELogicParamMust(): IPSDELogicParam;

  /**
   * 系统数据同步代理
   *
   * @type {IPSSysDataSyncAgent}
   */
  getPSSysDataSyncAgent(): IPSSysDataSyncAgent | null;

  /**
   * 系统数据同步代理
   *
   * @type {IPSSysDataSyncAgent}
   */
  get psSysDataSyncAgent(): IPSSysDataSyncAgent | null;

  /**
   * 系统数据同步代理（必须存在）
   *
   * @type {IPSSysDataSyncAgent}
   */
  getPSSysDataSyncAgentMust(): IPSSysDataSyncAgent;
}
